// 放一些我们通过的验证的

// file: 我们要检查的文件
// condition: 用什么样的条件去检查
interface CheckCondition {
  format?: string[]; // 检查它是什么样的格式
  size?: number; // 每个上传图片有多大
}
type ErrorType = "size" | "format" | null;
export function beforUpLoadCheck(file: File, condition: CheckCondition) {
  const { format, size } = condition;
  // 判断格式是否合法
  const isValidFormat = format ? format.includes(file.type) : true;
  // 判断图片大小是否合法
  const isValidSize = size ? file.size / 1024 / 1024 < size : true;
  let error: ErrorType = null;
  if(!isValidFormat) {
    error = 'format'
  }
  if(!isValidSize) {
    error = 'size'
  }
  return{
    passed: isValidFormat && isValidSize,
    error
  }
}
